package cn.lcsjsxy.yxc.incommonuse.Date;

import org.junit.jupiter.api.Test;

import java.util.Date;

/**
 * JDK8之前日期和时间的API测试
 */
public class DateTimeTest {

    //1.System类中的currentTimeMillis（）
    @Test
    public void test1(){
        long time=System.currentTimeMillis();
        //返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差
        //称为时间戳
        System.out.println(time);
    }

    /*
    * java.util.Date类
    *       |---java.sql.Date类
    * 1.两个构造器的使用
    * 2.两个方法的使用
    *       >toString():显示当前的日期和时间
    *       >getTime():获取当前Date对象对应的毫秒数。（时间戳）
    * 3.java.sql.Date对应着数据库中的日期类型的变量
    *       >如何实例化
    *       >sql.Date --->util.Date对象
    * */
    @Test
    public void test2(){
        //构造器一：Date()：创建了一个对应当前时间Date对象
        Date date1=new Date();
        System.out.println(date1.toString());//Tue Mar 25 18:03:02 CST 2025
        System.out.println(date1.getTime());

        //构造器二：创建指定毫秒数的Date对象
        Date date2=new java.sql.Date(1742897033806L);
        System.out.println(date2);

        //创建java.s1l.Date对象
        Date date3=new java.sql.Date(35235325345L);
        System.out.println(date3);

        //如何将java.util.Date对象转换为java.sql.Date对象
        //情况一：
//        Date date4=new java.sql.Date(2342343242323L);
//        java.sql.Date date5=(java.sql.Date)date4;
//        System.out.println(date5);
        //情况二：
        Date date6=new Date();
        java.sql.Date date7=new java.sql.Date(date6.getTime());
        System.out.println(date7);
    }
}
